For the last couple decades computing devices, such as personal computers were often designed to be relatively self-contained so that data could be created, stored, and revised on the same device. More recently, remote data storage has become more common. One particular driving force is that remote data storage was offered for free or at very low cost. Another driving force is that remote storage can make access to the data easier when multiple users and/or multiple devices are involved. However, remote storage is not without its disadvantages. One disadvantage is that some entity is incurring costs for the storage and the amount of data being stored is growing at a very fast rate. Another disadvantage, and one that is particularly irksome to users, is delay associated with sending and retrieving the data from the remote storage. Large amounts of data can overwhelm networks and cause user-perceptible delays and associated dissatisfaction.